package com.javasm.springboot3.entity;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

/**
 * @Author：longjinyi
 * @Version：1.0
 * @Date：2021/12/27-20:49
 * @Since:jdk1.8
 * @Description:
 */
@Data
//怎么去读取配置文件，给当前User类的两个属性进行赋值
//给User类的属性进行赋值，首先要拿到这个User类的对象，然后把这个User类的对象放到spring容器中，才能进行赋值操作
//当前这个User类不属于三层架构，所以使用组件注解将这个User类放入spring容器中，由spring来创建它的对象
@Component
//要读取配置文件application.properties里面的对象user的属性对当前的User的属性进行赋值
//@ConfigurationProperties注解的括号里面要给配置文件里面的user对象名，这样才知道读取的是配置文件里面的哪个对象
//这里写完这个注解之后类里面不用写赋值方法，前缀的括号里面的对象名，即配置文件里面的对象会自动和当前类在spring创建的对象去匹配
//然后把配置文件里面的对象user的属性的值一一对应的赋值给当前User类的属性
//@ConfigurationProperties注解依赖于set和get方法进行赋值，所以当前类的@Data注解不能省略
//如果不提供set方法 可以使用@Value代替@ConfigurationProperties
//因为@Value注解不依赖set和get方法
//只要是读取配置文件里面的对象，@ConfigurationProperties注解都要加前缀
@ConfigurationProperties(prefix = "user")  //依赖于setter方法
public class User {

    private String loginName;

    private String pwd;
}
